Career 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Porto Challenger Prague 3 Challenger Mallorca Challenger Davis Cup, Group I, 1R, AUT-POR 1-3 Bratislava 2 Challenger Lisbon Challenger Ismaning Challenger Calgary Challenger Drummondville Challenger Oeiras 1 Challenger Davis Cup, World Group, Q, FIN-POR 3-1 Girona Challenger Millennium Estoril Open - Estoril USA F4 USA F25 USA F26 USA F27 USA F1 USA F2 USA F4 USA F8 USA F9 USA F23 USA F24 USA F25 USA F27 USA F3 USA F6 USA F8 USA F9 USA F11 USA F15 USA F16 USA F17 USA F22 USA F23 USA F24 USA F25 USA F26 USA F27 USA F2 Spain F17 Spain F18 Spain F22 Spain F23 USA F16 Spain F26 Spain F27 Spain F33 Spain F34 Spain F35 Portugal F4 Portugal F5 Spain F38 Spain F39 Spain F40 Spain F41 Spain F3 Spain F5 Spain F6 Spain F8 Spain F9 Spain F10 Spain F13 Spain F17 Spain F18 USA F10 Spain F19 USA F11 Spain F20 Argentina F6 Romania F10 Argentina F7 Romania F11 Paraguay F3 Spain F30 Spain F31 Spain F33 Spain F34 USA F24 Portugal F7 USA F25 Portugal F8 Spain F39 Spain F40 Spain F41 Spain F42 United Arab Emirates F1 United Arab Emirates F2 Dominican Republic F3 Dominican Republic F4 Dominican Republic F5 Spain F3 USA F3 Spain F4 Panama F1 Spain F5 Spain F7 Spain F10 Spain F11 Turkey F4 Turkey F5 Turkey F6 Usa F9 Usa F10 Spain F16 Usa F11 Spain F17 Spain F18 Spain F20 Spain F21 Usa F15 Usa F16 France F12 Usa F17 Usa F18 Usa F19 Spain F28 USA F20 Spain F29 Spain F30 Portugal F4 USA F22 Portugal F5 Usa F23 USA F24 Usa F25 Spain F35 Usa F26 Spain F37 Usa F27 Usa F28 Usa F29 Dominican Republic F2 Dominican Republic F3 Morocco F1 Spain F3 Spain F4 Morocco F2 Croatia F1 Italy F2 Croatia F2 Italy F3 Croatia F3 Turkey F6 Turkey F7 Turkey F8 Spain F16 Spain F17 Spain F18 Spain F19 Spain F20 Usa F13 Romania F3 Spain F19 Usa F16 Usa F14 Usa F15 USA F17 Italy F17 USA F18 USA F19 Colombia F2 Colombia F3 Spain F31 Spain F35 Spain F36 USA F26 USA F27 Mexico F8 Mexico F9 USA F1 Mexico F1 USA F3 France F4 Spain F15 Spain F14 Bosnia & Herzegovina F1 Italy F14 Italy F15 USA F17 USA F18 Canada F3 Colombia F3 Colombia F4 Colombia F5 Canada F5 Canada F6 Canada F7 Venezuela F7 Spain F36 Venezuela F8 Spain F37 Spain F38 USA F4 Mexico F3 Mexico F4 Italy F11 Italy F14 Romania F4 Italy F20 Romania F7 Maia Challenger Mamaia Challenger - Constanta 2004 Colorado Tennis Classic - Denver 2004 Keys Gate Challenger - Homestead The Wright Financial Group USTA Challenger - Champaign Sunset Moulding Yuba City Racquet Club Challenger - Yuba City The West Side Tennis Club Grass Court Challenger - Forest Hills USTA Comerica Challenger - Aptos 2006 USTA Tallahassee Tennis Challenger - Tallahassee Sunset Moulding Yuba City Racquet Club Challenger - Yuba City Fifth-Third Bank Tennis Classic - Lexington GHI Bronx Tennis Classic - Bronx Naples Challenger - Naples 2007 West Side Tennis Club Clay Court Challenger - Forest Hills Kos Succhetti Tennis Cup - Cordenons 84° Concurso Internacional Tenis San Sebastian - San Sebastian The Mercedes Benz of Calabasas - Calabasas Orbetello Challenger Seville Challenger Sacramento Challenger Tarragona Challenger Rennes Challenger Tanger Challenger Meknes Challenger Rabat Challenger Sarajevo Challenger Marrakech Challenger Leon Challenger Tallahassee Challenger Tunis Challenger Reggio Emilia Challenger Turin Challenger Recanati Challenger Tampere Challenger Istanbul Challenger Manerbio Challenger Seville Challenger Bogota Challenger Izmir Challenger Cali Challenger Heilbronn Challenger Courmayeur Challenger Quimper Challenger Casablanca Challenger Guangzhou Challenger Pingguo Challenger Barranquilla Challenger St. Brieuc Challenger Pereira Challenger Sao Paulo Challenger Rome Challenger Zagreb Challenger Cremona Challenger Alessandria Challenger Furth Challenger Rijeka Challenger Kosice Challenger Marburg Challenger Braunschweig Challenger Tampere Challenger Segovia Challenger San Marino Challenger San Sebastian Challenger Seville Challenger Szczecin Challenger Trnava Challenger Madrid Challenger Medellin Challenger Eckental Challenger Guayaquil Challenger Honolulu Challenger Kazan Challenger Quimper Challenger Bergamo Challenger Meknes Challenger Casablanca Challenger Guadalajara Challenger Rabat Challenger Marrakech Challenger Rimouski Challenger San Luis Potosi Challenger Mersin Challenger Leon Challenger Rome Challenger Bordeaux Challenger Caltanissetta Challenger Furth Challenger Monza Challenger Kosice Challenger Milan Challenger Arad Challenger Timisoara Challenger Recanati Challenger Tampere Challenger Sibiu Challenger Cordenons Challenger Segovia Challenger Como Challenger Alphen Challenger Istanbul Challenger Trnava Challenger Madrid Challenger Quito Challenger San Juan Challenger Rio De Janeiro Challenger Villa Allende Challenger Buenos Aires Challenger Porto Alegre Challenger Medellin Challenger Montevideo Challenger Guayaquil Challenger Toyota Challenger Maui Challenger Rimouski Challenger Leon Challenger Guadalajara Challenger Mexico City Challenger Johannesburg Challenger Bordeaux Challenger Arad Challenger Furth Challenger Prague Challenger Kosice Challenger Todi Challenger San Benedetto Challenger Poznan Challenger Recanati Challenger Guimaraes Challenger Orbetello Challenger San Marino Challenger Alphen Challenger Seville Challenger Sacramento Challenger Tiburon Challenger Charlottesville Challenger Knoxville Challenger Champaign Challenger Antalya 2 Challenger Mallorca Challenger Cassis Challenger Biel Challenger Orleans Challenger Alicante Challenger Brest Challenger Tenerife Challenger Bratislava Challenger Helsinki Challenger Quimper Challenger Phoenix Challenger Girona Challenger Oeiras 3 Challenger Aix En Provence Challenger Tunis Challenger Vicenza Challenger Cassis Challenger Ortisei Challenger Oeiras 2 Challenger Braga Challenger International Tennis Championships - Delray Beach Mercedes-Benz Cup - Los Angeles Estoril Open - Estoril Estoril Open - Estoril Estoril Open - Estoril Serbia Open - Belgrade If Stockholm Open - Stockholm Open Sud de France - Montpellier Open 13 - Marseille Estoril Open - Estoril German Tennis Championships - Hamburg Aircel Chennai Open - Chennai Heineken Open - Auckland Open Sabadell Atlantico - Barcelona Estoril Open - Estoril Studena Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Aircel Chennai Open - Chennai Apia International - Sydney VTR Open - Vina del Mar Brasil Open - Sao Paulo SAP Open - San Jose Copa Claro - Buenos Aires Abierto Mexicano Telcel - Acapulco Delray Beach International Tennis Championships - Delray Beach Power Horse Cup - Dusseldorf Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Malaysian Open - Kuala Lumpur Kremlin Cup - Moscow Valencia Open - Valencia Apia International - Sydney Open Sud de France - Montpellier Copa Claro - Buenos Aires Rio Open 500 - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras Power Horse Cup - Dusseldorf Gerry Weber Open - Halle Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Winston-Salem Open - Winston-Salem Moselle Open - Metz Malaysian Open - Kuala Lumpur China Open - Beijing If Stockholm Open - Stockholm Valencia Open - Valencia Heineken Open - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona Geneva Open - Geneva Topshelf Open - 's-Hertogenbosch AEGON Championships - London Aegon Nottingham Open - Nottingham Vegeta Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Winston-Salem Open - Winston-Salem Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo Kremlin Cup - Moscow Valencia Open - Valencia St. Petersburg Open - St. Petersburg Millennium Estoril Open - Estoril ASB Classic - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Open de Nice Cote d'Azur - Nice Gerry Weber Open - Halle Aegon Nottingham Open - Nottingham SkiStar Swedish Open - Bastad Konzum Croatia Open - Umag Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Rakuten Japan Open - Tokyo European Open - Antwerp Erste Bank Open - Vienna ASB Classic - Auckland Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Geneva Open - Geneva Gerry Weber Open - Halle Antalya Cup - Antalya Konzum Croatia Open - Umag Suisse Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen Rakuten Japan Open - Tokyo European Open - Antwerp Swiss Indoors Basel - Basel ASB Classic - Auckland Garanti Koza Sofia Open - Sofia ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Heineken Open - Auckland Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Open Parc - Lyon Gerry Weber Open - Halle Antalya Cup - Antalya Plava Laguna Croatia Open - Umag Swiss Open - Gstaad Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Swiss Indoors Basel - Basel ASB Classic - Auckland Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril Geneva Open - Geneva Libema Open - 's-Hertogenbosch Noventi Open - Halle Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad Swiss Open - Gstaad Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Rakuten Japan Open - Tokyo Intrum Stockholm Open - Stockholm Swiss Indoors Basel - Basel ASB Classic - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Generali Open - Kitzbuhel European Open - Antwerp Hamburg European Open - Hamburg Cordoba Open - Cordoba Chile Dove Men+Care Open - Santiago Abierto Mexicano Telcel - Acapulco Serbia Open - Belgrade Millennium Estoril Open - Estoril Open Parc - Lyon Mercedes Cup - Stuttgart Noventi Open - Halle Mallorca Championships - Mallorca Sardegna Open - Cagliari Melbourne Summer Set - Melbourne Tata Open Maharashtra - Pune Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Serbia Open - Belgrade Gonet Geneva Open - Geneva Mercedes Cup - Stuttgart Nordea Open - Bastad Swiss Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem Moselle Open - Metz Stockholm Open - Stockholm Erste Bank Open - Vienna Tel Aviv Watergen Open - Tel Aviv Gijon Open - Gijon ASB Classic - Auckland Cordoba Open - Cordoba Rio Open - Rio de Janeiro Chile Dove Men+Care Open - Santiago Millennium Estoril Open - Estoril Dubai Duty Free Tennis Championships - Dubai Vegeta Croatia Open - Umag Argentina Open - Buenos Aires Delray Beach International Tennis Championships - Delray Beach Hall of Fame Open - Newport Millennium Estoril Open - Estoril Noventi Open - Halle Mallorca Championships - Mallorca Qatar ExxonMobil Open - Doha Argentina Open - Buenos Aires China Open - Beijing BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Internazionali BNL d'Italia - Rome Western & Southern Open - New York BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome National Bank Open - Montreal Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Davis Cup, Group 2, 2R, POR-CYP 5-0 Davis Cup, Group 2, 1R, CYP-POR 3-2 Davis Cup, Group 2, PO, ALG-POR 0-5 Davis Cup, Europe/Africa Group II, 2R, POR-CYP 5-0 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group I, 1R, POR-SVK 4-1 Davis Cup, Group I, 2R, SUI-POR 5-0 Davis Cup, Group I, 2R, ISR-POR 3-2 Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group II, 1R, POR-BEN 5-0 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group II, 1R, POR-MAR 4-1 Davis Cup, Group II, 2R, POR-FIN 4-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, 1R, POR-AUT 1-4 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, Group I, 2R, POR-UKR 4-1 Davis Cup, World Group, PO, POR-GER 2-3 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, Group I, PO, UKR-POR 3-1 Davis Cup, Group I, PO, POR-RSA 4-0 Davis Cup, World Group, QR, KAZ-POR 3-1 Davis Cup, Group I, 1R, BLR-POR 3-2 Davis Cup, World Group I, PO, LTU-POR 0-4 Davis Cup, Group I, 1R, ROU-POR 3-1 Davis Cup, Group I, PO, POR-POL 4-0 Davis Cup, Group I, 1R, POR-BRA 3-1 Davis Cup, World Group, PO, POR-CZE 1-3 Wimbledon (juniors) U.S. Open (juniors) All Lower level tournaments Olympics - Rio de Janeiro Olympics - Tokyo